package com.ibeeking.found.open.b.rest.service;

import com.ibeeking.found.open.api.common.dto.StatisticsCarDTO;
import com.ibeeking.found.open.service.common.dto.ParkingResultDTO;
import com.ibeeking.found.open.service.common.param.ParkingParam;
import com.ibeeking.found.open.service.common.query.StatisticsCarQuery;

import java.util.List;

/**
 * @ClassName IParkingService
 * @Description
 * @Author ibeeking
 * @Date 2021-06-01 18:59
 **/
public interface IParkingService {

    /**
     * 车辆入场推送
     *
     * @param parkingParam
     * @return
     */
    ParkingResultDTO parkIn(ParkingParam parkingParam);

    /**
     * 车辆出厂推送
     *
     * @param parkingParam
     * @return
     */
    ParkingResultDTO parkOut(ParkingParam parkingParam);

    /**
     * 支付成功订单推送
     *
     * @param parkingParam
     * @return
     */
    ParkingResultDTO parkOrder(ParkingParam parkingParam);

    /**
     * 缴费推送
     *
     * @param parkingParam
     * @return
     */
    ParkingResultDTO parkCharge(ParkingParam parkingParam);

    List<StatisticsCarDTO> statisticsCar(StatisticsCarQuery query);
}
